package com.ys.entity.storage;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Table;
import com.alibaba.fastjson.annotation.JSONField;
import com.ys.annotation.YsField;
import com.ys.entity.base.BaseEntity;
/**
*/
@Table(name="TCC_EstimatedCostDetailItem", catalog="Id")
public class TccEstimatedCostDetailItem extends BaseEntity<TccEstimatedCostDetailItem> {

	@YsField(nameDataBase="Id", nameJava="id", typeDataBase="bigint")
	private Long id;
	@YsField(nameDataBase="LogisticsMethod", nameJava="logisticsMethod", typeDataBase="varchar")
	private String logisticsMethod;
	@YsField(nameDataBase="TotalCost", nameJava="totalCost", typeDataBase="decimal")
	private BigDecimal totalCost;
	@YsField(nameDataBase="TotalCostDescription", nameJava="totalCostDescription", typeDataBase="decimal")
	private BigDecimal totalCostDescription;
	@YsField(nameDataBase="WeightMeasurement", nameJava="weightMeasurement", typeDataBase="decimal")
	private BigDecimal weightMeasurement;
	@YsField(nameDataBase="EstimatedHeavyFreight", nameJava="estimatedHeavyFreight", typeDataBase="decimal")
	private BigDecimal estimatedHeavyFreight;
	@YsField(nameDataBase="GoodsNumber", nameJava="goodsNumber", typeDataBase="bigint")
	private Long goodsNumber;
	@YsField(nameDataBase="GoodsSurcharge", nameJava="goodsSurcharge", typeDataBase="decimal")
	private BigDecimal goodsSurcharge;
	@YsField(nameDataBase="MaterialSurcharge", nameJava="materialSurcharge", typeDataBase="decimal")
	private BigDecimal materialSurcharge;
	@YsField(nameDataBase="LogisticsSurcharge", nameJava="logisticsSurcharge", typeDataBase="decimal")
	private BigDecimal logisticsSurcharge;
	@YsField(nameDataBase="Status", nameJava="status", typeDataBase="tinyint")
	private Integer status;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="CreateTime", nameJava="createTime", typeDataBase="datetime")
	private Date createTime;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="UpdateTime", nameJava="updateTime", typeDataBase="datetime")
	private Date updateTime;

	public Long getId() {
		return id;
	}
	public TccEstimatedCostDetailItem setId(Long id) {
		this.id = id;
		return this;
	}
	public String getLogisticsMethod() {
		return logisticsMethod;
	}
	public TccEstimatedCostDetailItem setLogisticsMethod(String logisticsMethod) {
		this.logisticsMethod = logisticsMethod;
		return this;
	}
	public BigDecimal getTotalCost() {
		return totalCost;
	}
	public TccEstimatedCostDetailItem setTotalCost(BigDecimal totalCost) {
		this.totalCost = totalCost;
		return this;
	}
	public BigDecimal getTotalCostDescription() {
		return totalCostDescription;
	}
	public TccEstimatedCostDetailItem setTotalCostDescription(BigDecimal totalCostDescription) {
		this.totalCostDescription = totalCostDescription;
		return this;
	}
	public BigDecimal getWeightMeasurement() {
		return weightMeasurement;
	}
	public TccEstimatedCostDetailItem setWeightMeasurement(BigDecimal weightMeasurement) {
		this.weightMeasurement = weightMeasurement;
		return this;
	}
	public BigDecimal getEstimatedHeavyFreight() {
		return estimatedHeavyFreight;
	}
	public TccEstimatedCostDetailItem setEstimatedHeavyFreight(BigDecimal estimatedHeavyFreight) {
		this.estimatedHeavyFreight = estimatedHeavyFreight;
		return this;
	}
	public Long getGoodsNumber() {
		return goodsNumber;
	}
	public TccEstimatedCostDetailItem setGoodsNumber(Long goodsNumber) {
		this.goodsNumber = goodsNumber;
		return this;
	}
	public BigDecimal getGoodsSurcharge() {
		return goodsSurcharge;
	}
	public TccEstimatedCostDetailItem setGoodsSurcharge(BigDecimal goodsSurcharge) {
		this.goodsSurcharge = goodsSurcharge;
		return this;
	}
	public BigDecimal getMaterialSurcharge() {
		return materialSurcharge;
	}
	public TccEstimatedCostDetailItem setMaterialSurcharge(BigDecimal materialSurcharge) {
		this.materialSurcharge = materialSurcharge;
		return this;
	}
	public BigDecimal getLogisticsSurcharge() {
		return logisticsSurcharge;
	}
	public TccEstimatedCostDetailItem setLogisticsSurcharge(BigDecimal logisticsSurcharge) {
		this.logisticsSurcharge = logisticsSurcharge;
		return this;
	}
	public Integer getStatus() {
		return status;
	}
	public TccEstimatedCostDetailItem setStatus(Integer status) {
		this.status = status;
		return this;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public TccEstimatedCostDetailItem setCreateTime(Date createTime) {
		this.createTime = createTime;
		return this;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public TccEstimatedCostDetailItem setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
		return this;
	}

	public static TccEstimatedCostDetailItem tccEstimatedCostDetailItem(
		String logisticsMethod,
		BigDecimal totalCost,
		BigDecimal totalCostDescription,
		BigDecimal weightMeasurement,
		BigDecimal estimatedHeavyFreight,
		Long goodsNumber,
		BigDecimal goodsSurcharge,
		BigDecimal materialSurcharge,
		BigDecimal logisticsSurcharge,
		Integer status
			) {
		TccEstimatedCostDetailItem entity = new TccEstimatedCostDetailItem();
		entity.setLogisticsMethod(logisticsMethod);
		entity.setTotalCost(totalCost);
		entity.setTotalCostDescription(totalCostDescription);
		entity.setWeightMeasurement(weightMeasurement);
		entity.setEstimatedHeavyFreight(estimatedHeavyFreight);
		entity.setGoodsNumber(goodsNumber);
		entity.setGoodsSurcharge(goodsSurcharge);
		entity.setMaterialSurcharge(materialSurcharge);
		entity.setLogisticsSurcharge(logisticsSurcharge);
		entity.setStatus(status);
		return entity;
	}
}